











// bootstrap轻提示
const toastBox = document.querySelector('#myToast')
const toast = new bootstrap.Toast(toastBox, {
  animation: true, // 开启过渡动画
  autohide: true, // 开启自动隐藏
  delay: 1000 // 3000ms后自动隐藏
})
const tip = (msg) => {
  toastBox.querySelector('.toast-body').innerHTML = msg
  toast.show()
}


// === 测试代码 ===
// tip('请输入用户名')




$('#btn-register').on('click', async function (e) {
  e.preventDefault()
  let data = $('#register-form').serialize()

  let nameVal = $("[name=username]").val().trim()
  let passVal = $("[name=password]").val().trim()

  if (nameVal.length === 0) { return tip('请输入用户名') }
  if (passVal.length === 0) { return tip('请输入密码') }
  if (nameVal.length <= 1 || nameVal.length >= 15) { return tip('用户名长度2~15位') }
  if (passVal.length <= 5 || passVal.length >= 15) { return tip('密码长度6~15位') }


  // axios.post('/register', data).then(res => {

  //   tip('注册成功')

  //   setTimeout(() => {
  //     location.href = './login.html' // 注册成功跳转登录
  //   }, 500)

  // })
  
  // 发送请求 await 只会等待成功的结果，如果要处理失败，需要try catch
  try {
    await axios.post('/register', data)
    tip('注册成功')
    
    setTimeout(() => {
      location.href = './login.html' // 注册成功跳转登录
    }, 500)
  } catch (e) {
    // console.dir(e)
    // 状态码409, 表示用户名已存在
    if (e.response.status === 409) {
      return tip(e.response.data.message)
    }
    tip('注册失败，服务器繁忙')
  }

})








